// ************************************************************************ //
// The types declared in this file were generated from data read from the
// WSDL File described below:
// WSDL     : http://wspilotyts.casper.com.tr/ytsservice.asmx?WSDL
//  >Import : http://wspilotyts.casper.com.tr/ytsservice.asmx?WSDL>0
// Encoding : utf-8
// Version  : 1.0
// (09.02.2015 10:36:22 - - $Rev: 45757 $)
// ************************************************************************ //

unit ytsservice;

interface

uses InvokeRegistry, SOAPHTTPClient, Types, XSBuiltIns;

const
  IS_OPTN = $0001;
  IS_REF  = $0080;


type

  // ************************************************************************ //
  // The following types, referred to in the WSDL document are not being represented
  // in this file. They are either aliases[@] of other types represented or were referred
  // to but never[!] declared in the document. The types from the latter category
  // typically map to predefined/known XML or Embarcadero types; however, they could also 
  // indicate incorrect WSDL documents that failed to declare or import a schema type.
  // ************************************************************************ //
  // !:unsignedByte    - "http://www.w3.org/2001/XMLSchema"[Gbl]
  // !:long            - "http://www.w3.org/2001/XMLSchema"[Gbl]
  // !:string          - "http://www.w3.org/2001/XMLSchema"[Gbl]
  // !:decimal         - "http://www.w3.org/2001/XMLSchema"[Gbl]
  // !:boolean         - "http://www.w3.org/2001/XMLSchema"[Gbl]
  // !:int             - "http://www.w3.org/2001/XMLSchema"[Gbl]



  // ************************************************************************ //
  // Namespace : http://tempuri.org/
  // soapAction: http://tempuri.org/%operationName%
  // transport : http://schemas.xmlsoap.org/soap/http
  // style     : document
  // use       : literal
  // binding   : YtsServiceSoap12
  // service   : YtsService
  // port      : YtsServiceSoap12
  // URL       : http://wspilotyts.casper.com.tr/ytsservice.asmx
  // ************************************************************************ //
  YtsServiceSoap = interface(IInvokable)
  ['{F3D5F5DE-F1D1-43E3-5BD2-A11B20570136}']
    function  GetAllowenceHeader(const headerusername: string; const headerpassword: string; const token: string; const udid: string; const sourceType: Byte; const modulId: Integer; 
                                 const termId: string): string; stdcall;
    function  GetAllowenceLine(const headerusername: string; const headerpassword: string; const token: string; const udid: string; const sourceType: Byte; const modulId: Integer; 
                               const headerId: string): string; stdcall;
    function  InsertAllowence(const headerusername: string; const headerpassword: string; const token: string; const udid: string; const sourceType: Byte; const modulId: Integer; 
                              const termId: string): string; stdcall;
    function  GetServiceStatusResult(const headerusername: string; const headerpassword: string; const token: string; const udid: string; const sourceType: Byte; const modulId: Integer; 
                                     const invoiceNumber: string): string; stdcall;
    function  UserLogin(const headerusername: string; const headerpassword: string; const udid: string; const sourceType: Byte; const email: string; const password: string; 
                        const accountnumber: string): string; stdcall;
    function  UserLogout(const headerusername: string; const headerpassword: string; const token: string; const udid: string; const sourceType: Byte): string; stdcall;
    function  GetUserModelPermissionList(const headerusername: string; const headerpassword: string; const token: string; const udid: string; const sourceType: Byte; const modulId: Integer
                                         ): string; stdcall;
    function  GetUserModelPermission(const headerusername: string; const headerpassword: string; const token: string; const udid: string; const sourceType: Byte; const permissionId: Integer; 
                                     const modulId: Integer): string; stdcall;
    function  GetPermission(const headerusername: string; const headerpassword: string; const token: string; const udid: string; const sourceType: Byte; const userId: Integer; 
                            const modulId: Integer): string; stdcall;
    function  GetUserList(const headerusername: string; const headerpassword: string; const token: string; const udid: string; const sourceType: Byte; const modulId: Integer
                          ): string; stdcall;
    function  GetB2BUserList(const headerusername: string; const headerpassword: string; const token: string; const udid: string; const sourceType: Byte; const modulId: Integer
                             ): string; stdcall;
    function  DeleteUser(const headerusername: string; const headerpassword: string; const token: string; const udid: string; const sourceType: Byte; const modulId: Integer; 
                         const userId: Integer): string; stdcall;
    function  UpdateUser(const headerUsername: string; const headerpassword: string; const token: string; const udid: string; const sourceType: Byte; const modulId: Integer; 
                         const userId: Integer; const technicalId: string; const defectCenterId: string; const repairCenterId: string; const firstName: string; 
                         const lastName: string; const email: string): string; stdcall;
    function  UpdateModulPermission(const headerUsername: string; const headerpassword: string; const token: string; const udid: string; const sourceType: Byte; const modulId: Integer; 
                                    const updateUserId: Integer; const updateModelId: Integer; const updatePermissionId: Integer; const isActive: Boolean): string; stdcall;
    function  GetProductGroup(const headerusername: string; const headerpassword: string; const token: string; const udid: string; const sourceType: Byte; const modulId: Integer
                              ): string; stdcall;
    function  GetRepairStage(const headerusername: string; const headerpassword: string; const token: string; const udid: string; const sourceType: Byte; const modulId: Integer; 
                             const serviceOrderId: string): string; stdcall;
    function  GetRepairStatus(const headerusername: string; const headerpassword: string; const token: string; const udid: string; const sourceType: Byte; const modulId: Integer; 
                              const startDate: string; const endDate: string; const serialNumber: string; const endusername: string; const productGrouplist: string; 
                              const phone: string; const repairlist: string; const serviceOrderId: string): string; stdcall;
    function  GetRepairStatusDetail(const headerusername: string; const headerpassword: string; const token: string; const udid: string; const sourceType: Byte; const modulId: Integer; 
                                    const serviceOrderId: string): string; stdcall;
    function  GetSpareHistory(const headerusername: string; const headerpassword: string; const token: string; const udid: string; const sourceType: Byte; const modulId: Integer; 
                              const serviceOrderId: string): string; stdcall;
    function  GetRepairHistory(const headerusername: string; const headerpassword: string; const token: string; const udid: string; const sourceType: Byte; const modulId: Integer; 
                               const serviceOrderId: string): string; stdcall;
    function  GetRepairJournalHistory(const headerusername: string; const headerpassword: string; const token: string; const udid: string; const sourceType: Byte; const modulId: Integer; 
                                      const serviceOrderId: string): string; stdcall;
    function  GetSerailNumberWaranty(const headerusername: string; const headerpassword: string; const token: string; const udid: string; const sourceType: Byte; const modulId: Integer; 
                                     const serialNumber: string): string; stdcall;
    function  GetProductBySerial(const headerusername: string; const headerpassword: string; const token: string; const udid: string; const sourceType: Byte; const modulId: Integer; 
                                 const serialNumber: string): string; stdcall;
    function  GetItemBySerial(const headerusername: string; const headerpassword: string; const token: string; const udid: string; const sourceType: Byte; const modulId: Integer; 
                              const serialNumber: string): string; stdcall;
    function  GetProductByItemId(const headerusername: string; const headerpassword: string; const token: string; const udid: string; const sourceType: Byte; const modulId: Integer; 
                                 const itemId: string): string; stdcall;
    function  GetSerialNumberHistory(const headerusername: string; const headerpassword: string; const token: string; const udid: string; const sourceType: Byte; const modulId: Integer; 
                                     const serialNumber: string): string; stdcall;
    function  GetSpareProductBySerailNumber(const headerusername: string; const headerpassword: string; const token: string; const udid: string; const sourceType: Byte; const modulId: Integer; 
                                            const serialNumber: string): string; stdcall;
    function  GetSpareProductByItemId(const headerusername: string; const headerpassword: string; const token: string; const udid: string; const sourceType: Byte; const modulId: Integer; 
                                      const itemId: string): string; stdcall;
    function  GetAccessory(const headerusername: string; const headerpassword: string; const token: string; const udid: string; const sourceType: Byte; const modulId: Integer; 
                           const serviceOrderId: string): string; stdcall;
    function  GetErrorStatus(const headerusername: string; const headerpassword: string; const token: string; const udid: string; const sourceType: Byte; const modulId: Integer
                             ): string; stdcall;
    function  GetDefectDetermination(const headerusername: string; const headerpassword: string; const token: string; const udid: string; const sourceType: Byte; const modulId: Integer; 
                                     const errorId: string; const productGroup: string; const topGroup: string; const itemId: string): string; stdcall;
    function  GetDefect(const headerusername: string; const headerpassword: string; const token: string; const udid: string; const sourceType: Byte; const modulId: Integer; 
                        const productGroup: string): string; stdcall;
    function  GetDefectStatus(const headerusername: string; const headerpassword: string; const token: string; const udid: string; const sourceType: Byte; const modulId: Integer; 
                              const errorId: string): string; stdcall;
    function  GetDefectExplanation(const headerusername: string; const headerpassword: string; const token: string; const udid: string; const sourceType: Byte; const modulId: Integer; 
                                   const statusId: string; const defectDeterminationRecId: string): string; stdcall;
    function  GetProjectCode(const headerusername: string; const headerpassword: string; const token: string; const udid: string; const sourceType: Byte; const modulId: Integer; 
                             const accountNum: string): string; stdcall;
    function  GetServiceType(const headerusername: string; const headerpassword: string; const token: string; const udid: string; const sourceType: Byte; const modulId: Integer
                             ): string; stdcall;
    function  GetPrescription(const headerusername: string; const headerpassword: string; const token: string; const udid: string; const sourceType: Byte; const modulId: Integer; 
                              const serialNumber: string; const serviceOrderId: string): string; stdcall;
    function  GetProductPrescription(const headerusername: string; const headerpassword: string; const token: string; const udid: string; const sourceType: Byte; const modulId: Integer; 
                                     const serialNumber: string): string; stdcall;
    function  GetPrescriptionDetail(const headerusername: string; const headerpassword: string; const token: string; const udid: string; const sourceType: Byte; const modulId: Integer; 
                                    const recId: string; const isMain: Boolean): string; stdcall;
    function  GetStock(const headerusername: string; const headerpassword: string; const token: string; const udid: string; const sourceType: Byte; const modulId: Integer
                       ): string; stdcall;
    function  GetStockSerialList(const headerusername: string; const headerpassword: string; const token: string; const udid: string; const sourceType: Byte; const modulId: Integer; 
                                 const itemId: string; const itemdimId: string): string; stdcall;
    function  CreateProductPrescription(const headerusername: string; const headerpassword: string; const token: string; const udid: string; const sourceType: Byte; const modulId: Integer; 
                                        const serialNumber: string): string; stdcall;
    function  CanForward(const headerusername: string; const headerpassword: string; const token: string; const udid: string; const sourceType: Byte; const modulId: Integer; 
                         const serviceOrderId: string): string; stdcall;
    function  CanSendToCenter(const headerusername: string; const headerpassword: string; const token: string; const udid: string; const sourceType: Byte; const modulId: Integer; 
                              const serviceOrderId: string; const serialNumber: string): string; stdcall;
    function  GetProductByCode(const headerusername: string; const headerpassword: string; const token: string; const udid: string; const sourceType: Byte; const modulId: Integer; 
                               const productCode: string): string; stdcall;
    function  GetPayment(const headerusername: string; const headerpassword: string; const token: string; const udid: string; const sourceType: Byte; const modulId: Integer; 
                         const repairJournalId: string; const transactionId: Integer): string; stdcall;
    function  GetPaymentTotal(const headerusername: string; const headerpassword: string; const token: string; const udid: string; const sourceType: Byte; const modulId: Integer; 
                              const repairJournalId: string): string; stdcall;
    function  UpdateRepairStatus(const headerusername: string; const headerpassword: string; const token: string; const udid: string; const sourceType: Byte; const modulId: Integer; 
                                 const serviceOrderId: string; const endUserName: string; const gsm: string; const phone: string; const email: string; 
                                 const identityNumber: string; const address: string; const cityId: string; const districtId: string; const defectDescription: string; 
                                 const phisicalcontrolnotes: string; const errorStatus: string; const defectReal: string): string; stdcall;
    function  InsertRepairStatus(const headerusername: string; const headerpassword: string; const token: string; const udid: string; const sourceType: Byte; const modulId: Integer; 
                                 const serialNumber: string; const endUserName: string; const gsm: string; const phone: string; const email: string; 
                                 const identityNumber: string; const address: string; const cityId: string; const districtId: string; const defectDescription: string; 
                                 const phisicalcontrolnotes: string; const errorStatus: string; const defectReal: string; const customerAcoount: string; const projectId: string; 
                                 const sendType: string; const itemId: string): string; stdcall;
    function  InsertRepairStatusSentToCenter(const headerusername: string; const headerpassword: string; const token: string; const udid: string; const sourceType: Byte; const modulId: Integer; 
                                             const serialNumber: string; const defectDescription: string; const phisicalcontrolnotes: string; const errorStatus: string; const defectReal: string; 
                                             const customerAcoount: string; const projectId: string; const sendType: string; const itemId: string; const cargoNumber: string; 
                                             const cargoCompany: string; const oldServiceOrderId: string; const dealerDocumentNumber: string): string; stdcall;
    function  DeleteAccessory(const headerusername: string; const headerpassword: string; const token: string; const udid: string; const sourceType: Byte; const modulId: Integer; 
                              const serviceOrderId: string; const recId: string): string; stdcall;
    function  InsertAccessory(const headerusername: string; const headerpassword: string; const token: string; const udid: string; const sourceType: Byte; const modulId: Integer; 
                              const serviceOrderId: string; const accessoryId: string; const description: string; const serialNumber: string): string; stdcall;
    function  UpdateRepairStatusStage(const headerUsername: string; const headerpassword: string; const token: string; const udid: string; const sourceType: Byte; const modulId: Integer; 
                                      const serviceOrderId: string; const repairStageId: string; const nextTecnicalId: string; const password: string; const name_: string; 
                                      const isDust: Boolean; const cargoNumber: string; const cargoCompany: string; const oldTecnicalId: string): string; stdcall;
    function  UpdateRepairJournal(const headerUsername: string; const headerpassword: string; const token: string; const udid: string; const sourceType: Byte; const modulId: Integer; 
                                  const repairJournalId: string; const serviceSymptomsStatus: Integer; const errorStatus: string; const defectReal: string; const defectStatusReferance: string; 
                                  const serviceSymptomsResult: string; const isMainItem: Boolean; const repairDescription: string): string; stdcall;
    function  UpdateRepairJournalLine(const headerUsername: string; const headerpassword: string; const token: string; const udid: string; const sourceType: Byte; const modulId: Integer; 
                                      const recId: Int64; const errorStatus: string; const defectAssume: string; const defectReal: string; const defectStatusReferance: string; 
                                      const serviceSymptomsResult: string): string; stdcall;
    function  UpdateChangeRepairJournal(const headerUsername: string; const headerpassword: string; const token: string; const udid: string; const sourceType: Byte; const modulId: Integer; 
                                        const lineId: string; const repairChangeType: string; const havePayment: Boolean; const newProductCode: string; const newProductAmount: TXSDecimal; 
                                        const newProductCurrency: string; const newProductCurrencyAmmount: TXSDecimal; const categoryId: string; const extensionNote: string; const approvalDescription: string; 
                                        const newSerialItem: string; const wHApprovalDescription: string): string; stdcall;
    function  InsertRepairPayment(const headerUsername: string; const headerpassword: string; const token: string; const udid: string; const sourceType: Byte; const modulId: Integer; 
                                  const repairJournalId: string; const projCategoryId: string; const projSalesPrice: TXSDecimal; const itemId: string; const approve: string
                                  ): string; stdcall;
    function  DeleteRepairPayment(const headerUsername: string; const headerpassword: string; const token: string; const udid: string; const sourceType: Byte; const modulId: Integer; 
                                  const recId: string): string; stdcall;
    function  UpdateRepairPayment(const headerUsername: string; const headerpassword: string; const token: string; const udid: string; const sourceType: Byte; const modulId: Integer; 
                                  const recId: string; const projCategoryId: string; const projSalesPrice: TXSDecimal; const itemId: string; const approve: string
                                  ): string; stdcall;
    function  InsertFile(const headerusername: string; const headerpassword: string; const token: string; const udid: string; const sourceType: Byte; const modulId: Integer; 
                         const filecontent: string; const repairJournalId: string; const fileName: string; const extention: string): string; stdcall;
    function  GetFile(const headerusername: string; const headerpassword: string; const token: string; const udid: string; const sourceType: Byte; const modulId: Integer; 
                      const repairJournalId: string): string; stdcall;
    function  DeleteFile(const headerusername: string; const headerpassword: string; const token: string; const udid: string; const sourceType: Byte; const modulId: Integer; 
                         const recId: string): string; stdcall;
    function  GetFileBinary(const headerusername: string; const headerpassword: string; const token: string; const udid: string; const sourceType: Byte; const modulId: Integer; 
                            const recId: string): string; stdcall;
    function  GetRepairStageSummary(const headerusername: string; const headerpassword: string; const token: string; const udid: string; const sourceType: Byte; const modulId: Integer; 
                                    const startYear: Integer; const startMonth: Integer; const month: Integer): string; stdcall;
    function  GetEmployeeSummary(const headerusername: string; const headerpassword: string; const token: string; const udid: string; const sourceType: Byte; const modulId: Integer; 
                                 const startYear: Integer; const startMonth: Integer; const month: Integer): string; stdcall;
    function  GetMonthSummary(const headerusername: string; const headerpassword: string; const token: string; const udid: string; const sourceType: Byte; const modulId: Integer; 
                              const startYear: Integer; const startMonth: Integer; const month: Integer): string; stdcall;
    function  GetMenuPart(const headerusername: string; const headerpassword: string; const token: string; const udid: string; const sourceType: Byte): string; stdcall;
    function  GetMenu(const headerusername: string; const headerpassword: string; const token: string; const udid: string; const sourceType: Byte; const partId: Integer
                      ): string; stdcall;
    function  GetModulList(const headerusername: string; const headerpassword: string; const token: string; const udid: string; const sourceType: Byte; const isAdmin: Boolean
                           ): string; stdcall;
    function  GetEmployee(const headerusername: string; const headerpassword: string; const token: string; const udid: string; const sourceType: Byte; const modulId: Integer
                          ): string; stdcall;
    function  GetInventLocation(const headerusername: string; const headerpassword: string; const token: string; const udid: string; const sourceType: Byte; const modulId: Integer
                                ): string; stdcall;
    function  GetState(const headerusername: string; const headerpassword: string; const token: string; const udid: string; const sourceType: Byte; const modulId: Integer
                       ): string; stdcall;
    function  GetCounty(const headerusername: string; const headerpassword: string; const token: string; const udid: string; const sourceType: Byte; const modulId: Integer; 
                        const stateId: string): string; stdcall;
    function  GetCargoCompany(const headerusername: string; const headerpassword: string; const token: string; const udid: string; const sourceType: Byte; const modulId: Integer
                              ): string; stdcall;
    function  GetCurrency(const headerusername: string; const headerpassword: string; const token: string; const udid: string; const sourceType: Byte; const modulId: Integer
                          ): string; stdcall;
    function  GetpProjectCategory(const headerusername: string; const headerpassword: string; const token: string; const udid: string; const sourceType: Byte; const modulId: Integer; 
                                  const projectCategoryGroupId: string): string; stdcall;
    function  GetpProjectCategoryGroup(const headerusername: string; const headerpassword: string; const token: string; const udid: string; const sourceType: Byte; const modulId: Integer
                                       ): string; stdcall;
    function  GetpItem(const headerusername: string; const headerpassword: string; const token: string; const udid: string; const sourceType: Byte; const modulId: Integer
                       ): string; stdcall;
    function  GetExtenssion(const headerusername: string; const headerpassword: string; const token: string; const udid: string; const sourceType: Byte; const modulId: Integer
                            ): string; stdcall;
    function  GetExtenssionApplication(const headerusername: string; const headerpassword: string; const token: string; const udid: string; const sourceType: Byte; const modulId: Integer; 
                                       const extention: string): string; stdcall;
    function  GetVendor(const headerusername: string; const headerpassword: string; const token: string; const udid: string; const sourceType: Byte; const modulId: Integer
                        ): string; stdcall;
    procedure InsertLog(const userId: Integer; const fullName: string; const usercode: string; const accountname: string; const accountnumber: string; const token: string; 
                        const udid: string; const sourceType: Byte; const innerException: string); stdcall;
    function  InsertRefundHeader(const headerusername: string; const headerpassword: string; const token: string; const udid: string; const sourceType: Byte; const modulId: Integer; 
                                 const vendorAccount: string): string; stdcall;
    function  InsertRefundLine(const headerusername: string; const headerpassword: string; const token: string; const udid: string; const sourceType: Byte; const modulId: Integer; 
                               const headerId: string; const serialNumber: string; const itemNumber: string; const wareHouse: string; const quatity: Integer
                               ): string; stdcall;
    function  DeleteRefundHeader(const headerusername: string; const headerpassword: string; const token: string; const udid: string; const sourceType: Byte; const modulId: Integer; 
                                 const headerId: string): string; stdcall;
    function  DeleteRefundLine(const headerusername: string; const headerpassword: string; const token: string; const udid: string; const sourceType: Byte; const modulId: Integer; 
                               const recId: string): string; stdcall;
    function  GetRefundHeader(const headerusername: string; const headerpassword: string; const token: string; const udid: string; const sourceType: Byte; const modulId: Integer
                              ): string; stdcall;
    function  GetRefundLine(const headerusername: string; const headerpassword: string; const token: string; const udid: string; const sourceType: Byte; const modulId: Integer; 
                            const headerId: string): string; stdcall;
    function  GetAllowenceTerm(const headerusername: string; const headerpassword: string; const token: string; const udid: string; const sourceType: Byte; const modulId: Integer
                               ): string; stdcall;
  end;

function GetYtsServiceSoap(UseWSDL: Boolean=System.False; Addr: string=''; HTTPRIO: THTTPRIO = nil): YtsServiceSoap;


implementation
  uses SysUtils;

function GetYtsServiceSoap(UseWSDL: Boolean; Addr: string; HTTPRIO: THTTPRIO): YtsServiceSoap;
const
  defWSDL = 'http://wspilotyts.casper.com.tr/ytsservice.asmx?WSDL';
  defURL  = 'http://wspilotyts.casper.com.tr/ytsservice.asmx';
  defSvc  = 'YtsService';
  defPrt  = 'YtsServiceSoap12';
var
  RIO: THTTPRIO;
begin
  Result := nil;
  if (Addr = '') then
  begin
    if UseWSDL then
      Addr := defWSDL
    else
      Addr := defURL;
  end;
  if HTTPRIO = nil then
    RIO := THTTPRIO.Create(nil)
  else
    RIO := HTTPRIO;
  try
    Result := (RIO as YtsServiceSoap);
    if UseWSDL then
    begin
      RIO.WSDLLocation := Addr;
      RIO.Service := defSvc;
      RIO.Port := defPrt;
    end else
      RIO.URL := Addr;
  finally
    if (Result = nil) and (HTTPRIO = nil) then
      RIO.Free;
  end;
end;


initialization
  { YtsServiceSoap }
  InvRegistry.RegisterInterface(TypeInfo(YtsServiceSoap), 'http://tempuri.org/', 'utf-8');
  InvRegistry.RegisterDefaultSOAPAction(TypeInfo(YtsServiceSoap), 'http://tempuri.org/%operationName%');
  InvRegistry.RegisterInvokeOptions(TypeInfo(YtsServiceSoap), ioDocument);
  InvRegistry.RegisterInvokeOptions(TypeInfo(YtsServiceSoap), ioSOAP12);
  { YtsServiceSoap.GetAllowenceHeader }
  InvRegistry.RegisterMethodInfo(TypeInfo(YtsServiceSoap), 'GetAllowenceHeader', '',
                                 '[ReturnName="GetAllowenceHeaderResult"]', IS_OPTN);
  { YtsServiceSoap.GetAllowenceLine }
  InvRegistry.RegisterMethodInfo(TypeInfo(YtsServiceSoap), 'GetAllowenceLine', '',
                                 '[ReturnName="GetAllowenceLineResult"]', IS_OPTN);
  { YtsServiceSoap.InsertAllowence }
  InvRegistry.RegisterMethodInfo(TypeInfo(YtsServiceSoap), 'InsertAllowence', '',
                                 '[ReturnName="InsertAllowenceResult"]', IS_OPTN);
  { YtsServiceSoap.GetServiceStatusResult }
  InvRegistry.RegisterMethodInfo(TypeInfo(YtsServiceSoap), 'GetServiceStatusResult', '',
                                 '[ReturnName="GetServiceStatusResultResult"]', IS_OPTN);
  { YtsServiceSoap.UserLogin }
  InvRegistry.RegisterMethodInfo(TypeInfo(YtsServiceSoap), 'UserLogin', '',
                                 '[ReturnName="UserLoginResult"]', IS_OPTN);
  { YtsServiceSoap.UserLogout }
  InvRegistry.RegisterMethodInfo(TypeInfo(YtsServiceSoap), 'UserLogout', '',
                                 '[ReturnName="UserLogoutResult"]', IS_OPTN);
  { YtsServiceSoap.GetUserModelPermissionList }
  InvRegistry.RegisterMethodInfo(TypeInfo(YtsServiceSoap), 'GetUserModelPermissionList', '',
                                 '[ReturnName="GetUserModelPermissionListResult"]', IS_OPTN);
  { YtsServiceSoap.GetUserModelPermission }
  InvRegistry.RegisterMethodInfo(TypeInfo(YtsServiceSoap), 'GetUserModelPermission', '',
                                 '[ReturnName="GetUserModelPermissionResult"]', IS_OPTN);
  { YtsServiceSoap.GetPermission }
  InvRegistry.RegisterMethodInfo(TypeInfo(YtsServiceSoap), 'GetPermission', '',
                                 '[ReturnName="GetPermissionResult"]', IS_OPTN);
  { YtsServiceSoap.GetUserList }
  InvRegistry.RegisterMethodInfo(TypeInfo(YtsServiceSoap), 'GetUserList', '',
                                 '[ReturnName="GetUserListResult"]', IS_OPTN);
  { YtsServiceSoap.GetB2BUserList }
  InvRegistry.RegisterMethodInfo(TypeInfo(YtsServiceSoap), 'GetB2BUserList', '',
                                 '[ReturnName="GetB2BUserListResult"]', IS_OPTN);
  { YtsServiceSoap.DeleteUser }
  InvRegistry.RegisterMethodInfo(TypeInfo(YtsServiceSoap), 'DeleteUser', '',
                                 '[ReturnName="DeleteUserResult"]', IS_OPTN);
  { YtsServiceSoap.UpdateUser }
  InvRegistry.RegisterMethodInfo(TypeInfo(YtsServiceSoap), 'UpdateUser', '',
                                 '[ReturnName="UpdateUserResult"]', IS_OPTN);
  { YtsServiceSoap.UpdateModulPermission }
  InvRegistry.RegisterMethodInfo(TypeInfo(YtsServiceSoap), 'UpdateModulPermission', '',
                                 '[ReturnName="UpdateModulPermissionResult"]', IS_OPTN);
  { YtsServiceSoap.GetProductGroup }
  InvRegistry.RegisterMethodInfo(TypeInfo(YtsServiceSoap), 'GetProductGroup', '',
                                 '[ReturnName="GetProductGroupResult"]', IS_OPTN);
  { YtsServiceSoap.GetRepairStage }
  InvRegistry.RegisterMethodInfo(TypeInfo(YtsServiceSoap), 'GetRepairStage', '',
                                 '[ReturnName="GetRepairStageResult"]', IS_OPTN);
  { YtsServiceSoap.GetRepairStatus }
  InvRegistry.RegisterMethodInfo(TypeInfo(YtsServiceSoap), 'GetRepairStatus', '',
                                 '[ReturnName="GetRepairStatusResult"]', IS_OPTN);
  { YtsServiceSoap.GetRepairStatusDetail }
  InvRegistry.RegisterMethodInfo(TypeInfo(YtsServiceSoap), 'GetRepairStatusDetail', '',
                                 '[ReturnName="GetRepairStatusDetailResult"]', IS_OPTN);
  { YtsServiceSoap.GetSpareHistory }
  InvRegistry.RegisterMethodInfo(TypeInfo(YtsServiceSoap), 'GetSpareHistory', '',
                                 '[ReturnName="GetSpareHistoryResult"]', IS_OPTN);
  { YtsServiceSoap.GetRepairHistory }
  InvRegistry.RegisterMethodInfo(TypeInfo(YtsServiceSoap), 'GetRepairHistory', '',
                                 '[ReturnName="GetRepairHistoryResult"]', IS_OPTN);
  { YtsServiceSoap.GetRepairJournalHistory }
  InvRegistry.RegisterMethodInfo(TypeInfo(YtsServiceSoap), 'GetRepairJournalHistory', '',
                                 '[ReturnName="GetRepairJournalHistoryResult"]', IS_OPTN);
  { YtsServiceSoap.GetSerailNumberWaranty }
  InvRegistry.RegisterMethodInfo(TypeInfo(YtsServiceSoap), 'GetSerailNumberWaranty', '',
                                 '[ReturnName="GetSerailNumberWarantyResult"]', IS_OPTN);
  { YtsServiceSoap.GetProductBySerial }
  InvRegistry.RegisterMethodInfo(TypeInfo(YtsServiceSoap), 'GetProductBySerial', '',
                                 '[ReturnName="GetProductBySerialResult"]', IS_OPTN);
  { YtsServiceSoap.GetItemBySerial }
  InvRegistry.RegisterMethodInfo(TypeInfo(YtsServiceSoap), 'GetItemBySerial', '',
                                 '[ReturnName="GetItemBySerialResult"]', IS_OPTN);
  { YtsServiceSoap.GetProductByItemId }
  InvRegistry.RegisterMethodInfo(TypeInfo(YtsServiceSoap), 'GetProductByItemId', '',
                                 '[ReturnName="GetProductByItemIdResult"]', IS_OPTN);
  { YtsServiceSoap.GetSerialNumberHistory }
  InvRegistry.RegisterMethodInfo(TypeInfo(YtsServiceSoap), 'GetSerialNumberHistory', '',
                                 '[ReturnName="GetSerialNumberHistoryResult"]', IS_OPTN);
  { YtsServiceSoap.GetSpareProductBySerailNumber }
  InvRegistry.RegisterMethodInfo(TypeInfo(YtsServiceSoap), 'GetSpareProductBySerailNumber', '',
                                 '[ReturnName="GetSpareProductBySerailNumberResult"]', IS_OPTN);
  { YtsServiceSoap.GetSpareProductByItemId }
  InvRegistry.RegisterMethodInfo(TypeInfo(YtsServiceSoap), 'GetSpareProductByItemId', '',
                                 '[ReturnName="GetSpareProductByItemIdResult"]', IS_OPTN);
  { YtsServiceSoap.GetAccessory }
  InvRegistry.RegisterMethodInfo(TypeInfo(YtsServiceSoap), 'GetAccessory', '',
                                 '[ReturnName="GetAccessoryResult"]', IS_OPTN);
  { YtsServiceSoap.GetErrorStatus }
  InvRegistry.RegisterMethodInfo(TypeInfo(YtsServiceSoap), 'GetErrorStatus', '',
                                 '[ReturnName="GetErrorStatusResult"]', IS_OPTN);
  { YtsServiceSoap.GetDefectDetermination }
  InvRegistry.RegisterMethodInfo(TypeInfo(YtsServiceSoap), 'GetDefectDetermination', '',
                                 '[ReturnName="GetDefectDeterminationResult"]', IS_OPTN);
  { YtsServiceSoap.GetDefect }
  InvRegistry.RegisterMethodInfo(TypeInfo(YtsServiceSoap), 'GetDefect', '',
                                 '[ReturnName="GetDefectResult"]', IS_OPTN);
  { YtsServiceSoap.GetDefectStatus }
  InvRegistry.RegisterMethodInfo(TypeInfo(YtsServiceSoap), 'GetDefectStatus', '',
                                 '[ReturnName="GetDefectStatusResult"]', IS_OPTN);
  { YtsServiceSoap.GetDefectExplanation }
  InvRegistry.RegisterMethodInfo(TypeInfo(YtsServiceSoap), 'GetDefectExplanation', '',
                                 '[ReturnName="GetDefectExplanationResult"]', IS_OPTN);
  { YtsServiceSoap.GetProjectCode }
  InvRegistry.RegisterMethodInfo(TypeInfo(YtsServiceSoap), 'GetProjectCode', '',
                                 '[ReturnName="GetProjectCodeResult"]', IS_OPTN);
  { YtsServiceSoap.GetServiceType }
  InvRegistry.RegisterMethodInfo(TypeInfo(YtsServiceSoap), 'GetServiceType', '',
                                 '[ReturnName="GetServiceTypeResult"]', IS_OPTN);
  { YtsServiceSoap.GetPrescription }
  InvRegistry.RegisterMethodInfo(TypeInfo(YtsServiceSoap), 'GetPrescription', '',
                                 '[ReturnName="GetPrescriptionResult"]', IS_OPTN);
  { YtsServiceSoap.GetProductPrescription }
  InvRegistry.RegisterMethodInfo(TypeInfo(YtsServiceSoap), 'GetProductPrescription', '',
                                 '[ReturnName="GetProductPrescriptionResult"]', IS_OPTN);
  { YtsServiceSoap.GetPrescriptionDetail }
  InvRegistry.RegisterMethodInfo(TypeInfo(YtsServiceSoap), 'GetPrescriptionDetail', '',
                                 '[ReturnName="GetPrescriptionDetailResult"]', IS_OPTN);
  { YtsServiceSoap.GetStock }
  InvRegistry.RegisterMethodInfo(TypeInfo(YtsServiceSoap), 'GetStock', '',
                                 '[ReturnName="GetStockResult"]', IS_OPTN);
  { YtsServiceSoap.GetStockSerialList }
  InvRegistry.RegisterMethodInfo(TypeInfo(YtsServiceSoap), 'GetStockSerialList', '',
                                 '[ReturnName="GetStockSerialListResult"]', IS_OPTN);
  { YtsServiceSoap.CreateProductPrescription }
  InvRegistry.RegisterMethodInfo(TypeInfo(YtsServiceSoap), 'CreateProductPrescription', '',
                                 '[ReturnName="CreateProductPrescriptionResult"]', IS_OPTN);
  { YtsServiceSoap.CanForward }
  InvRegistry.RegisterMethodInfo(TypeInfo(YtsServiceSoap), 'CanForward', '',
                                 '[ReturnName="CanForwardResult"]', IS_OPTN);
  { YtsServiceSoap.CanSendToCenter }
  InvRegistry.RegisterMethodInfo(TypeInfo(YtsServiceSoap), 'CanSendToCenter', '',
                                 '[ReturnName="CanSendToCenterResult"]', IS_OPTN);
  { YtsServiceSoap.GetProductByCode }
  InvRegistry.RegisterMethodInfo(TypeInfo(YtsServiceSoap), 'GetProductByCode', '',
                                 '[ReturnName="GetProductByCodeResult"]', IS_OPTN);
  { YtsServiceSoap.GetPayment }
  InvRegistry.RegisterMethodInfo(TypeInfo(YtsServiceSoap), 'GetPayment', '',
                                 '[ReturnName="GetPaymentResult"]', IS_OPTN);
  { YtsServiceSoap.GetPaymentTotal }
  InvRegistry.RegisterMethodInfo(TypeInfo(YtsServiceSoap), 'GetPaymentTotal', '',
                                 '[ReturnName="GetPaymentTotalResult"]', IS_OPTN);
  { YtsServiceSoap.UpdateRepairStatus }
  InvRegistry.RegisterMethodInfo(TypeInfo(YtsServiceSoap), 'UpdateRepairStatus', '',
                                 '[ReturnName="UpdateRepairStatusResult"]', IS_OPTN);
  { YtsServiceSoap.InsertRepairStatus }
  InvRegistry.RegisterMethodInfo(TypeInfo(YtsServiceSoap), 'InsertRepairStatus', '',
                                 '[ReturnName="InsertRepairStatusResult"]', IS_OPTN);
  { YtsServiceSoap.InsertRepairStatusSentToCenter }
  InvRegistry.RegisterMethodInfo(TypeInfo(YtsServiceSoap), 'InsertRepairStatusSentToCenter', '',
                                 '[ReturnName="InsertRepairStatusSentToCenterResult"]', IS_OPTN);
  { YtsServiceSoap.DeleteAccessory }
  InvRegistry.RegisterMethodInfo(TypeInfo(YtsServiceSoap), 'DeleteAccessory', '',
                                 '[ReturnName="DeleteAccessoryResult"]', IS_OPTN);
  { YtsServiceSoap.InsertAccessory }
  InvRegistry.RegisterMethodInfo(TypeInfo(YtsServiceSoap), 'InsertAccessory', '',
                                 '[ReturnName="InsertAccessoryResult"]', IS_OPTN);
  { YtsServiceSoap.UpdateRepairStatusStage }
  InvRegistry.RegisterMethodInfo(TypeInfo(YtsServiceSoap), 'UpdateRepairStatusStage', '',
                                 '[ReturnName="UpdateRepairStatusStageResult"]', IS_OPTN);
  InvRegistry.RegisterParamInfo(TypeInfo(YtsServiceSoap), 'UpdateRepairStatusStage', 'name_', 'name', '');
  { YtsServiceSoap.UpdateRepairJournal }
  InvRegistry.RegisterMethodInfo(TypeInfo(YtsServiceSoap), 'UpdateRepairJournal', '',
                                 '[ReturnName="UpdateRepairJournalResult"]', IS_OPTN);
  { YtsServiceSoap.UpdateRepairJournalLine }
  InvRegistry.RegisterMethodInfo(TypeInfo(YtsServiceSoap), 'UpdateRepairJournalLine', '',
                                 '[ReturnName="UpdateRepairJournalLineResult"]', IS_OPTN);
  { YtsServiceSoap.UpdateChangeRepairJournal }
  InvRegistry.RegisterMethodInfo(TypeInfo(YtsServiceSoap), 'UpdateChangeRepairJournal', '',
                                 '[ReturnName="UpdateChangeRepairJournalResult"]', IS_OPTN);
  { YtsServiceSoap.InsertRepairPayment }
  InvRegistry.RegisterMethodInfo(TypeInfo(YtsServiceSoap), 'InsertRepairPayment', '',
                                 '[ReturnName="InsertRepairPaymentResult"]', IS_OPTN);
  { YtsServiceSoap.DeleteRepairPayment }
  InvRegistry.RegisterMethodInfo(TypeInfo(YtsServiceSoap), 'DeleteRepairPayment', '',
                                 '[ReturnName="DeleteRepairPaymentResult"]', IS_OPTN);
  { YtsServiceSoap.UpdateRepairPayment }
  InvRegistry.RegisterMethodInfo(TypeInfo(YtsServiceSoap), 'UpdateRepairPayment', '',
                                 '[ReturnName="UpdateRepairPaymentResult"]', IS_OPTN);
  { YtsServiceSoap.InsertFile }
  InvRegistry.RegisterMethodInfo(TypeInfo(YtsServiceSoap), 'InsertFile', '',
                                 '[ReturnName="InsertFileResult"]', IS_OPTN);
  { YtsServiceSoap.GetFile }
  InvRegistry.RegisterMethodInfo(TypeInfo(YtsServiceSoap), 'GetFile', '',
                                 '[ReturnName="GetFileResult"]', IS_OPTN);
  { YtsServiceSoap.DeleteFile }
  InvRegistry.RegisterMethodInfo(TypeInfo(YtsServiceSoap), 'DeleteFile', '',
                                 '[ReturnName="DeleteFileResult"]', IS_OPTN);
  { YtsServiceSoap.GetFileBinary }
  InvRegistry.RegisterMethodInfo(TypeInfo(YtsServiceSoap), 'GetFileBinary', '',
                                 '[ReturnName="GetFileBinaryResult"]', IS_OPTN);
  { YtsServiceSoap.GetRepairStageSummary }
  InvRegistry.RegisterMethodInfo(TypeInfo(YtsServiceSoap), 'GetRepairStageSummary', '',
                                 '[ReturnName="GetRepairStageSummaryResult"]', IS_OPTN);
  { YtsServiceSoap.GetEmployeeSummary }
  InvRegistry.RegisterMethodInfo(TypeInfo(YtsServiceSoap), 'GetEmployeeSummary', '',
                                 '[ReturnName="GetEmployeeSummaryResult"]', IS_OPTN);
  { YtsServiceSoap.GetMonthSummary }
  InvRegistry.RegisterMethodInfo(TypeInfo(YtsServiceSoap), 'GetMonthSummary', '',
                                 '[ReturnName="GetMonthSummaryResult"]', IS_OPTN);
  { YtsServiceSoap.GetMenuPart }
  InvRegistry.RegisterMethodInfo(TypeInfo(YtsServiceSoap), 'GetMenuPart', '',
                                 '[ReturnName="GetMenuPartResult"]', IS_OPTN);
  { YtsServiceSoap.GetMenu }
  InvRegistry.RegisterMethodInfo(TypeInfo(YtsServiceSoap), 'GetMenu', '',
                                 '[ReturnName="GetMenuResult"]', IS_OPTN);
  { YtsServiceSoap.GetModulList }
  InvRegistry.RegisterMethodInfo(TypeInfo(YtsServiceSoap), 'GetModulList', '',
                                 '[ReturnName="GetModulListResult"]', IS_OPTN);
  { YtsServiceSoap.GetEmployee }
  InvRegistry.RegisterMethodInfo(TypeInfo(YtsServiceSoap), 'GetEmployee', '',
                                 '[ReturnName="GetEmployeeResult"]', IS_OPTN);
  { YtsServiceSoap.GetInventLocation }
  InvRegistry.RegisterMethodInfo(TypeInfo(YtsServiceSoap), 'GetInventLocation', '',
                                 '[ReturnName="GetInventLocationResult"]', IS_OPTN);
  { YtsServiceSoap.GetState }
  InvRegistry.RegisterMethodInfo(TypeInfo(YtsServiceSoap), 'GetState', '',
                                 '[ReturnName="GetStateResult"]', IS_OPTN);
  { YtsServiceSoap.GetCounty }
  InvRegistry.RegisterMethodInfo(TypeInfo(YtsServiceSoap), 'GetCounty', '',
                                 '[ReturnName="GetCountyResult"]', IS_OPTN);
  { YtsServiceSoap.GetCargoCompany }
  InvRegistry.RegisterMethodInfo(TypeInfo(YtsServiceSoap), 'GetCargoCompany', '',
                                 '[ReturnName="GetCargoCompanyResult"]', IS_OPTN);
  { YtsServiceSoap.GetCurrency }
  InvRegistry.RegisterMethodInfo(TypeInfo(YtsServiceSoap), 'GetCurrency', '',
                                 '[ReturnName="GetCurrencyResult"]', IS_OPTN);
  { YtsServiceSoap.GetpProjectCategory }
  InvRegistry.RegisterMethodInfo(TypeInfo(YtsServiceSoap), 'GetpProjectCategory', '',
                                 '[ReturnName="GetpProjectCategoryResult"]', IS_OPTN);
  { YtsServiceSoap.GetpProjectCategoryGroup }
  InvRegistry.RegisterMethodInfo(TypeInfo(YtsServiceSoap), 'GetpProjectCategoryGroup', '',
                                 '[ReturnName="GetpProjectCategoryGroupResult"]', IS_OPTN);
  { YtsServiceSoap.GetpItem }
  InvRegistry.RegisterMethodInfo(TypeInfo(YtsServiceSoap), 'GetpItem', '',
                                 '[ReturnName="GetpItemResult"]', IS_OPTN);
  { YtsServiceSoap.GetExtenssion }
  InvRegistry.RegisterMethodInfo(TypeInfo(YtsServiceSoap), 'GetExtenssion', '',
                                 '[ReturnName="GetExtenssionResult"]', IS_OPTN);
  { YtsServiceSoap.GetExtenssionApplication }
  InvRegistry.RegisterMethodInfo(TypeInfo(YtsServiceSoap), 'GetExtenssionApplication', '',
                                 '[ReturnName="GetExtenssionApplicationResult"]', IS_OPTN);
  { YtsServiceSoap.GetVendor }
  InvRegistry.RegisterMethodInfo(TypeInfo(YtsServiceSoap), 'GetVendor', '',
                                 '[ReturnName="GetVendorResult"]', IS_OPTN);
  { YtsServiceSoap.InsertRefundHeader }
  InvRegistry.RegisterMethodInfo(TypeInfo(YtsServiceSoap), 'InsertRefundHeader', '',
                                 '[ReturnName="InsertRefundHeaderResult"]', IS_OPTN);
  { YtsServiceSoap.InsertRefundLine }
  InvRegistry.RegisterMethodInfo(TypeInfo(YtsServiceSoap), 'InsertRefundLine', '',
                                 '[ReturnName="InsertRefundLineResult"]', IS_OPTN);
  { YtsServiceSoap.DeleteRefundHeader }
  InvRegistry.RegisterMethodInfo(TypeInfo(YtsServiceSoap), 'DeleteRefundHeader', '',
                                 '[ReturnName="DeleteRefundHeaderResult"]', IS_OPTN);
  { YtsServiceSoap.DeleteRefundLine }
  InvRegistry.RegisterMethodInfo(TypeInfo(YtsServiceSoap), 'DeleteRefundLine', '',
                                 '[ReturnName="DeleteRefundLineResult"]', IS_OPTN);
  { YtsServiceSoap.GetRefundHeader }
  InvRegistry.RegisterMethodInfo(TypeInfo(YtsServiceSoap), 'GetRefundHeader', '',
                                 '[ReturnName="GetRefundHeaderResult"]', IS_OPTN);
  { YtsServiceSoap.GetRefundLine }
  InvRegistry.RegisterMethodInfo(TypeInfo(YtsServiceSoap), 'GetRefundLine', '',
                                 '[ReturnName="GetRefundLineResult"]', IS_OPTN);
  { YtsServiceSoap.GetAllowenceTerm }
  InvRegistry.RegisterMethodInfo(TypeInfo(YtsServiceSoap), 'GetAllowenceTerm', '',
                                 '[ReturnName="GetAllowenceTermResult"]', IS_OPTN);

end.